A printed circuit board (PCB) can be tested by using a tester to provide test signals to nodes of the board under test and analyzing the resulting conditions at the nodes. One method of testing, in-circuit testing, involves using test, pins to contact the nodes of the board under test, providing signals to those nodes that affect the conditions at a given device on the board (typically the nodes connected to leads to the particular device), analyzing the resulting signals, thereafter testing another device on the board by providing signals to another set of nodes of the board under test, and so on. There typically are a limited number of test channels, owing to their expense, connected to a large number of test pins through a relay multiplexer wired to make each test pin connectable to one of two test channels through two relays. The relays are operated to connect a test channel to only one test pin at one time, and the total number of test channels and the total number of test pins are usually divided into groups.
In one such prior art relay multiplexer, each group has two test channels made connectable to all sixteen test pins in the group through thirty-two relays; thus, only two test pins of the group can be connected at one time without a conflict. In this multiplexer, each group has a unique set of two test channels.
The possibility of conflict can also be reduced by increasing the number of relays to increase the "depth", i.e., the number of test channels connectable to each test pin. In the extreme case, making each channel connectable to each pin, one could use all channels and any pins without conflict. The number of relays, however, would be the number of channels times the number of test pins, requiring, for example, 100,000 relays to make one hundred test channels connectable to one thousand test pins.
Before the conception of this invention, Joseph Wrinn conceived relay multiplexer circuitry that made each test pin connectable to a unique combination of test channels within a group to reduce the possibility of conflict. The unique combinations of channels associated with pins in a group could include every possible unique combination of channels for the given number of channels per pin (i.e., depth D) so that the number of pins P in a group was P=C!/D!(C-D)!, where C is the number of channels. There also could be less than this number of pins, in which case every possible unique combination for the given number of channels and the depth would not be used.